package com.comac.print.component.app.dto;

import com.alibaba.cola.dto.DTO;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * @author:
 * @Date: 2022/4/19
 * @Description: fo编辑器 -基本信息
 */
@Data
public class FoSourceDTO extends DTO {

    private String id;
    /**
     * 母本id
     */
    private Integer efoId;
    /**
     * 图号/件号
     */

    private String drawingPartNo;

    /**
     * 图号
     */

    private String drawingNumber;

    /**
     * 件号
     */

    private String partNo;
    /**
     * 工单系列号
     * 机型+流水：
     * 支线（ARJ21）：A+6位流水；
     * 大客（C919）：CA+6位流水；
     */

    private String serNo;
    /**
     * 工单订单号
     */

    private String orderNum;
    /**
     * 外协
     * FO工单工序中部门代码有438 、439部门代码的工单，即显示“有”；否则“无”
     */

    private String concert;
    /**
     * 机型
     *
     * @see
     */

    private String model;
    /**
     * 零件版次
     */
    private String partEdition;

    /**
     * FO文档类型 FO:1|TFO:2
     *
     * @see
     */

    private Integer docType;

    /**
     * 文档编号
     */

    private String docNo;

    /**
     * 文档名称
     */

    private String docName;

    /**
     * 零件名称
     */

    private String partName;
    /**
     * fo基本信息的零件代码
     */

    private String foPartCode;
    /**
     * 类型  二维   三维
     */

    private String type;
    /**
     * 零件类型
     */

    private String partType;
    /**
     * 制造部门
     */
    private String mfgDept;
    /**
     * 文档生效架次
     */

    private String eff;

    /**
     * @see
     */

    private Integer rwkFlag;

    /**
     * FO版次
     */

    private String edition;

    /**
     * 制造依据、协调信息，默认信息从Mpr中获取，如果该字段中有值，将不会取默认信息
     */

    private String authorityCoordData;

    /**
     * 关重件
     */

    private String keyPart;

    /**
     * 站位代码
     */

    private String userStationCode;

    /**
     * 工位代码
     */

    private String userDeptCode;

    /**
     * 更改备注
     */

    private String changeRemarks;

    /**
     * 标准附注
     */
    private String standardRemark;


    /**
     * 创建人
     */
    private String creator;


    /**
     * 所需材料信息
     */
    private FoMaterialDTO foRequiredMaterial;

    /**
     * 飞走材料信息
     */
    private List<FoMaterialDTO> foFlightMaterial;


    /**
     * 工序信息
     */
    private List<FoWorkSeqDTO> foWorkSeqList;


    /**
     * 序列号
     */
    private String serialNumber;

    /**
     * fo状态
     *
     * @see
     */
    private Integer foStatus;

    /**
     * 工单状态
     */
    private String status;

    /**
     * 下发数量
     */
    private Integer qty;

    /**
     * fo编号
     */
    private String foNumber;
    /**
     * 流程实例编号
     */
    private String processInstanceId;

    /**
     * 适用阶段
     */
    private String adaptationStage;

    /**
     * FO类型,foType 创建的时候初始化为空是正常的，在基本信息编辑的时候 选加工或装配
     */
    private String foType;

    /**
     * 探伤指派人
     */
    private List<String> defectorScopeList;

    /**
     * 是否质量授权
     */
    private int isQaAuth;

    /**
     * 需质量授权的工序
     */
    private List<String> qaAuthWorkSeqList;

    /**
     * 需质量授权的工步
     */
    private List<String> qaAuthWorkStepList;

    /**
     * 签审状态
     */
    private String inspectionState;

    /**
     * FO母本附件
     */
    private List<FoAttachmentDTO> foAttachment;

    /**
     * FO母本参考草图
     */
    private List<FoAttachmentDTO> foSketch;

    /**
     * 基本信息-物料编码,优先查询该字段，如果该字段为空，查询 foPart中的 matNo
     * 新增字段 20210803
     */
    private String matNo;

    /**
     * 发布时间
     */
    private String releaseTime;

    /**
     * 发放日期
     */
    private String releaseDate;

    /**
     * 入库日期
     */
    private String warehousingDate;


    /**
     * 备注
     * FO工单建立DMIR显示DMIR；建立FAI显示FAI；设置PFP显示PFP；建立转移单显示转移；
     */
    private String remark;

    /**
     * 安全防护
     */
    private boolean protectSign;

    /**
     * 更改字母
     */
    private String chgltr;

    /**
     * 墨改快照
     */
    private String snapshot;


    /**
     * 操作人
     */
    private String operator;

    /**
     * 操作人名称
     */
    private String operatorName;

    /**
     * 是否为并行工序
     */
    private String parallelFlag;

    /**
     * 工序内容
     */
    private String content;
    /**
     * 发放架次
     */
    private  String flyNo;

    /**
     * DMIR标识
     */
    @TableField("DMIR_FLAG")
    private Integer dmirFlag;

    /**
     * FAI标识
     */
    private Integer faiFlag;

    /**
     * 纠正措施标识
     */
    private Boolean remedialActionFlag;

    /**
     * PFP标识
     */
    private Boolean pfpFlag;

    /**
     * 试模标识
     */
    private Boolean testModeFlag;

}